home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1997 September / Macworld (1997-09).dmg / Serious Software / Cherwell Scientific Demos / pro Fit / pro Fit 5.0 demo (68k).sea / pro Fit 5.0 demo (68k) / Functions & Programs / BlockChart next >
MacBinary  |  1996-06-02  |  8.3 KB  |  [ftFC/NLft]

view JSON data     |     view as text     |     open on a Mac     |     open on a PC

This file was processed as: MacBinary (archive/macBinary).

You can browse this item here: BlockChart

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
100% file MacBinary II, inited, Sun Jun 2 15:16:34 1996, modified Sun Jun 2 15:16:34 1996, creator 'NLft', type 'ftFC', 7306 bytes "BlockChart" , at 0x1d0a 815 bytes resource default (weak)
99% file data default
100% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[ftFC]
macFileCreator[NLft]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0a 42 6c 6f 63 6b 43 | 68 61 72 74 00 00 00 00 |..BlockC|hart....|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 66 74 46 43 4e 4c 66 | 74 01 00 00 00 00 00 00 |.ftFCNLf|t.......|
|00000050| 00 00 00 00 00 1c 8a 00 | 00 03 2f ad d7 99 12 ad |........|../.....|
|00000060| d7 99 12 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 f9 2a 00 00 |........|.....*..|
|00000080| 7b 20 54 68 69 73 20 70 | 72 6f 67 72 61 6d 20 64 |{ This p|rogram d|
|00000090| 72 61 77 73 20 61 20 74 | 68 72 65 65 2d 64 69 6d |raws a t|hree-dim|
|000000a0| 65 6e 73 69 6f 6e 61 6c | 20 62 6c 6f 63 6b 20 63 |ensional| block c|
|000000b0| 68 61 72 74 20 6f 66 20 | 61 20 74 77 6f 2d 64 69 |hart of |a two-di|
|000000c0| 6d 65 6e 73 69 6f 6e 61 | 6c 20 73 63 61 6c 61 72 |mensiona|l scalar|
|000000d0| 20 7d 0d 7b 20 66 69 65 | 6c 64 20 7a 28 78 2c 79 | }.{ fie|ld z(x,y|
|000000e0| 29 2e 20 7d 0d 7b 20 54 | 68 65 20 78 2d 20 61 6e |). }.{ T|he x- an|
|000000f0| 64 20 79 2d 63 6f 6f 72 | 64 69 6e 61 74 65 73 20 |d y-coor|dinates |
|00000100| 6f 66 20 74 68 65 20 66 | 69 65 6c 64 20 63 6f 72 |of the f|ield cor|
|00000110| 72 65 73 70 6f 6e 64 20 | 74 6f 20 63 6f 6c 75 6d |respond |to colum|
|00000120| 6e 20 61 6e 64 20 72 6f | 77 20 7d 0d 7b 20 6e 75 |n and ro|w }.{ nu|
|00000130| 6d 62 65 72 73 2e 20 54 | 68 65 20 7a 20 63 6f 6f |mbers. T|he z coo|
|00000140| 72 64 69 6e 61 74 65 20 | 69 73 20 67 69 76 65 6e |rdinate |is given|
|00000150| 20 62 79 20 74 68 65 20 | 76 61 6c 75 65 20 69 6e | by the |value in|
|00000160| 20 61 20 67 69 76 65 6e | 20 72 6f 77 2f 63 6f 6c | a given| row/col|
|00000170| 75 6d 6e 2e 20 7d 0d 7b | 20 54 6f 20 75 73 65 20 |umn. }.{| To use |
|00000180| 74 68 65 20 70 72 6f 67 | 72 61 6d 2c 20 63 68 6f |the prog|ram, cho|
|00000190| 6f 73 65 20 22 41 64 64 | 20 74 6f 20 4d 65 6e 75 |ose "Add| to Menu|
|000001a0| 22 20 66 72 6f 6d 20 74 | 68 65 20 4d 69 73 63 20 |" from t|he Misc |
|000001b0| 6d 65 6e 75 20 74 6f 20 | 63 6f 6d 70 69 6c 65 20 |menu to |compile |
|000001c0| 69 74 20 7d 0d 7b 20 54 | 68 65 6e 20 6f 70 65 6e |it }.{ T|hen open|
|000001d0| 20 61 20 64 61 74 61 20 | 77 69 6e 64 6f 77 20 28 | a data |window (|
|000001e0| 69 66 20 6e 6f 6e 65 20 | 69 73 20 6f 70 65 6e 29 |if none |is open)|
|000001f0| 2e 20 54 68 65 6e 20 72 | 75 6e 20 74 68 65 20 70 |. Then r|un the p|
|00000200| 72 6f 67 72 61 6d 20 62 | 79 20 63 68 6f 6f 73 69 |rogram b|y choosi|
|00000210| 6e 67 20 7d 0d 7b 20 22 | 42 6c 6f 63 6b 43 68 61 |ng }.{ "|BlockCha|
|00000220| 72 74 22 20 66 72 6f 6d | 20 74 68 65 20 6d 69 73 |rt" from| the mis|
|00000230| 63 20 6d 65 6e 75 2e 20 | 7d 0d 0d 70 72 6f 67 72 |c menu. |}..progr|
|00000240| 61 6d 20 42 6c 6f 63 6b | 43 68 61 72 74 3b 0d 0d |am Block|Chart;..|
|00000250| 20 7b 20 46 69 72 73 74 | 20 77 65 20 64 65 66 69 | { First| we defi|
|00000260| 6e 65 20 61 6c 6c 20 74 | 68 65 20 76 61 72 69 61 |ne all t|he varia|
|00000270| 62 6c 65 73 20 77 65 20 | 6e 65 65 64 20 7d 0d 76 |bles we |need }.v|
|00000280| 61 72 20 64 61 74 61 57 | 69 6e 64 49 44 2c 20 64 |ar dataW|indID, d|
|00000290| 72 61 77 57 69 6e 64 49 | 44 3b 0d 09 09 09 09 69 |rawWindI|D;.....i|
|000002a0| 2c 20 6a 3b 0d 09 09 09 | 09 6e 72 2c 20 6d 65 61 |, j;....|.nr, mea|
|000002b0| 6e 2c 20 6d 65 64 2c 20 | 6d 69 6e 2c 20 6d 61 78 |n, med, |min, max|
|000002c0| 3b 0d 09 09 09 09 70 68 | 2c 20 70 76 2c 20 70 68 |;.....ph|, pv, ph|
|000002d0| 68 2c 20 70 76 76 2c 20 | 74 68 69 63 6b 2c 20 6e |h, pvv, |thick, n|
|000002e0| 6f 72 6d 3b 0d 09 09 09 | 09 70 6f 73 48 2c 20 70 |orm;....|.posH, p|
|000002f0| 6f 73 56 3b 09 20 09 20 | 20 7b 20 61 62 73 6f 6c |osV;. . | { absol|
|00000300| 75 74 65 20 70 6f 73 69 | 74 69 6f 6e 20 7d 0d 09 |ute posi|tion }..|
|00000310| 09 09 09 74 6f 74 48 2c | 20 74 6f 74 56 3b 20 20 |...totH,| totV; |
|00000320| 20 20 20 7b 20 6d 61 78 | 69 6d 75 6d 20 77 69 64 | { max|imum wid|
|00000330| 74 68 2c 20 68 65 69 67 | 68 74 20 7d 0d 09 09 09 |th, heig|ht }....|
|00000340| 09 64 69 73 48 2c 20 64 | 69 73 56 3b 20 20 20 20 |.disH, d|isV; |
|00000350| 20 7b 20 64 69 73 74 61 | 6e 63 65 20 62 65 74 77 | { dista|nce betw|
|00000360| 65 65 6e 20 32 20 62 61 | 72 73 20 7d 0d 09 09 09 |een 2 ba|rs }....|
|00000370| 09 70 68 69 2c 20 74 68 | 65 74 61 3b 20 20 20 20 |.phi, th|eta; |
|00000380| 20 7b 20 74 68 65 20 61 | 6e 67 6c 65 73 20 6f 66 | { the a|ngles of|
|00000390| 20 33 2d 44 20 65 66 66 | 65 63 74 20 28 70 68 69 | 3-D eff|ect (phi|
|000003a0| 20 69 73 20 69 6e 20 70 | 6c 61 6e 65 29 20 7d 0d | is in p|lane) }.|
|000003b0| 09 09 09 09 70 68 69 30 | 2c 20 74 68 65 74 61 30 |....phi0|, theta0|
|000003c0| 3b 20 20 20 7b 20 74 68 | 65 20 73 61 6d 65 20 69 |; { th|e same i|
|000003d0| 6e 20 64 65 67 72 65 65 | 73 20 7d 0d 09 09 09 09 |n degree|s }.....|
|000003e0| 66 63 6f 6c 2c 20 6c 63 | 6f 6c 3b 09 09 09 09 09 |fcol, lc|ol;.....|
|000003f0| 7b 20 66 69 72 73 74 20 | 61 6e 64 20 6c 61 73 74 |{ first |and last|
|00000400| 20 63 6f 6c 75 6d 6e 20 | 74 6f 20 62 65 20 64 72 | column |to be dr|
|00000410| 61 77 6e 20 7d 0d 09 09 | 09 09 66 72 6f 77 2c 20 |awn }...|..frow, |
|00000420| 6c 72 6f 77 3b 20 20 20 | 20 20 7b 20 66 69 72 73 |lrow; | { firs|
|00000430| 74 20 61 6e 64 20 6c 61 | 73 74 20 72 6f 77 20 74 |t and la|st row t|
|00000440| 6f 20 62 65 20 64 72 61 | 77 6e 20 7d 0d 09 09 09 |o be dra|wn }....|
|00000450| 09 64 72 61 77 47 72 69 | 64 3b 09 09 09 09 09 09 |.drawGri|d;......|
|00000460| 09 7b 20 64 72 61 77 73 | 20 74 68 65 20 67 72 69 |.{ draws| the gri|
|00000470| 64 20 69 66 20 6e 6f 74 | 20 30 20 7d 0d 09 09 09 |d if not| 0 }....|
|00000480| 09 63 6f 6c 6f 72 31 2c | 20 63 6f 6c 6f 72 32 3b |.color1,| color2;|
|00000490| 20 7b 20 69 74 65 6d 73 | 20 69 6e 20 63 6f 6c 6f | { items| in colo|
|000004a0| 72 20 6d 65 6e 75 73 20 | 74 6f 20 62 65 20 73 65 |r menus |to be se|
|000004b0| 6c 65 63 74 65 64 20 7d | 0d 09 09 09 09 63 6f 6c |lected }|.....col|
|000004c0| 52 45 44 2c 20 63 6f 6c | 47 52 45 45 4e 2c 20 63 |RED, col|GREEN, c|
|000004d0| 6f 6c 42 4c 55 45 3a 20 | 61 72 72 61 79 5b 31 2e |olBLUE: |array[1.|
|000004e0| 2e 31 32 5d 3b 0d 0d 70 | 72 6f 63 65 64 75 72 65 |.12];..p|rocedure|
|000004f0| 20 49 6e 69 74 69 61 6c | 69 7a 65 3b 0d 20 7b 20 | Initial|ize;. { |
|00000500| 54 68 69 73 20 72 6f 75 | 74 69 6e 65 20 69 73 20 |This rou|tine is |
|00000510| 63 61 6c 6c 65 64 20 6f | 6e 63 65 20 77 68 65 6e |called o|nce when|
|00000520| 20 74 68 65 20 70 72 6f | 67 72 61 6d 20 69 73 20 | the pro|gram is |
|00000530| 61 64 64 65 64 20 74 6f | 20 7d 0d 20 7b 20 70 72 |added to| }. { pr|
|00000540| 6f 20 46 69 74 27 73 20 | 6d 65 6e 75 73 2e 20 7d |o Fit's |menus. }|
|00000550| 0d 20 7b 20 57 65 20 75 | 73 65 20 69 74 20 74 6f |. { We u|se it to|
|00000560| 20 69 6e 69 74 69 61 6c | 69 7a 65 20 73 65 76 65 | initial|ize seve|
|00000570| 72 61 6c 20 67 6c 6f 62 | 61 6c 20 76 61 72 69 61 |ral glob|al varia|
|00000580| 62 6c 65 73 2e 20 7d 0d | 62 65 67 69 6e 0d 20 20 |bles. }.|begin. |
|00000590| 70 6f 73 48 20 3a 3d 20 | 32 32 30 3b 20 70 6f 73 |posH := |220; pos|
|000005a0| 56 20 3a 3d 20 31 30 30 | 3b 0d 20 20 74 6f 74 48 |V := 100|;. totH|
|000005b0| 20 3a 3d 20 32 32 30 3b | 20 74 6f 74 56 20 3a 3d | := 220;| totV :=|
|000005c0| 20 32 30 30 3b 0d 20 20 | 74 68 69 63 6b 20 3a 3d | 200;. |thick :=|
|000005d0| 20 31 30 3b 0d 20 20 70 | 68 69 30 20 3a 3d 20 34 | 10;. p|hi0 := 4|
|000005e0| 35 3b 0d 20 20 74 68 65 | 74 61 30 20 3a 3d 20 33 |5;. the|ta0 := 3|
|000005f0| 30 3b 0d 20 20 63 6f 6c | 6f 72 31 20 3a 3d 20 32 |0;. col|or1 := 2|
|00000600| 3b 0d 20 20 63 6f 6c 6f | 72 32 20 3a 3d 20 37 3b |;. colo|r2 := 7;|
|00000610| 0d 20 20 64 72 61 77 47 | 72 69 64 20 3a 3d 20 31 |. drawG|rid := 1|
|00000620| 3b 0d 09 09 66 63 6f 6c | 20 3a 3d 20 31 3b 20 6c |;...fcol| := 1; l|
|00000630| 63 6f 6c 20 3a 3d 20 32 | 3b 0d 20 20 66 72 6f 77 |col := 2|;. frow|
|00000640| 20 3a 3d 20 31 3b 20 6c | 72 6f 77 20 3a 3d 20 35 | := 1; l|row := 5|
|00000650| 3b 0d 20 20 0d 20 20 7b | 20 54 68 65 20 66 6f 6c |;. . {| The fol|
|00000660| 6c 6f 77 69 6e 67 20 69 | 73 20 61 20 63 6f 6c 6f |lowing i|s a colo|
|00000670| 72 20 74 61 62 6c 65 2e | 20 49 74 20 63 6f 75 6c |r table.| It coul|
|00000680| 64 20 62 65 20 65 61 73 | 69 6c 79 20 65 78 74 65 |d be eas|ily exte|
|00000690| 6e 64 65 64 20 69 66 20 | 6e 65 63 65 73 73 61 72 |nded if |necessar|
|000006a0| 79 2e 20 7d 0d 20 20 63 | 6f 6c 52 45 44 5b 31 5d |y. }. c|olRED[1]|
|000006b0| 20 20 3a 3d 20 36 35 35 | 33 35 3b 20 63 6f 6c 47 | := 655|35; colG|
|000006c0| 52 45 45 4e 5b 31 5d 20 | 20 3a 3d 20 30 3b 20 20 |REEN[1] | := 0; |
|000006d0| 20 20 20 63 6f 6c 42 4c | 55 45 5b 31 5d 20 20 3a | colBL|UE[1] :|
|000006e0| 3d 20 36 35 35 33 35 3b | 09 7b 20 6d 61 67 65 6e |= 65535;|.{ magen|
|000006f0| 74 61 20 7d 0d 20 20 63 | 6f 6c 52 45 44 5b 32 5d |ta }. c|olRED[2]|
|00000700| 20 20 3a 3d 20 30 3b 20 | 20 20 20 20 63 6f 6c 47 | := 0; | colG|
|00000710| 52 45 45 4e 5b 32 5d 20 | 20 3a 3d 20 30 3b 20 20 |REEN[2] | := 0; |
|00000720| 20 20 20 63 6f 6c 42 4c | 55 45 5b 32 5d 20 20 3a | colBL|UE[2] :|
|00000730| 3d 20 36 35 35 33 35 3b | 09 7b 20 62 6c 75 65 20 |= 65535;|.{ blue |
|00000740| 7d 0d 20 20 63 6f 6c 52 | 45 44 5b 33 5d 20 20 3a |}. colR|ED[3] :|
|00000750| 3d 20 30 3b 20 20 20 20 | 20 63 6f 6c 47 52 45 45 |= 0; | colGREE|
|00000760| 4e 5b 33 5d 20 20 3a 3d | 20 36 35 35 33 35 3b 20 |N[3] :=| 65535; |
|00000770| 63 6f 6c 42 4c 55 45 5b | 33 5d 20 20 3a 3d 20 36 |colBLUE[|3] := 6|
|00000780| 35 35 33 35 3b 09 7b 20 | 63 79 61 6e 20 7d 0d 20 |5535;.{ |cyan }. |
|00000790| 20 63 6f 6c 52 45 44 5b | 34 5d 20 20 3a 3d 20 30 | colRED[|4] := 0|
|000007a0| 3b 20 20 20 20 20 63 6f | 6c 47 52 45 45 4e 5b 34 |; co|lGREEN[4|
|000007b0| 5d 20 20 3a 3d 20 33 32 | 37 36 37 3b 20 63 6f 6c |] := 32|767; col|
|000007c0| 42 4c 55 45 5b 34 5d 20 | 20 3a 3d 20 38 31 39 31 |BLUE[4] | := 8191|
|000007d0| 3b 09 20 7b 20 64 61 72 | 6b 20 67 72 65 65 6e 20 |;. { dar|k green |
|000007e0| 7d 0d 20 20 63 6f 6c 52 | 45 44 5b 35 5d 20 20 3a |}. colR|ED[5] :|
|000007f0| 3d 20 30 3b 20 20 20 20 | 20 63 6f 6c 47 52 45 45 |= 0; | colGREE|
|00000800| 4e 5b 35 5d 20 20 3a 3d | 20 36 35 35 33 35 3b 20 |N[5] :=| 65535; |
|00000810| 63 6f 6c 42 4c 55 45 5b | 35 5d 20 20 3a 3d 20 30 |colBLUE[|5] := 0|
|00000820| 3b 09 20 20 20 20 7b 20 | 6c 69 67 68 74 20 67 72 |;. { |light gr|
|00000830| 65 65 6e 20 7d 0d 20 20 | 63 6f 6c 52 45 44 5b 36 |een }. |colRED[6|
|00000840| 5d 20 20 3a 3d 20 36 35 | 35 33 35 3b 20 63 6f 6c |] := 65|535; col|
|00000850| 47 52 45 45 4e 5b 36 5d | 20 20 3a 3d 20 36 35 35 |GREEN[6]| := 655|
|00000860| 33 35 3b 20 63 6f 6c 42 | 4c 55 45 5b 36 5d 20 20 |35; colB|LUE[6] |
|00000870| 3a 3d 20 30 3b 09 20 20 | 20 20 7b 20 79 65 6c 6c |:= 0;. | { yell|
|00000880| 6f 77 20 7d 0d 20 20 63 | 6f 6c 52 45 44 5b 37 5d |ow }. c|olRED[7]|
|00000890| 20 20 3a 3d 20 36 35 35 | 33 35 3b 20 63 6f 6c 47 | := 655|35; colG|
|000008a0| 52 45 45 4e 5b 37 5d 20 | 20 3a 3d 20 33 32 37 36 |REEN[7] | := 3276|
|000008b0| 37 3b 20 63 6f 6c 42 4c | 55 45 5b 37 5d 20 20 3a |7; colBL|UE[7] :|
|000008c0| 3d 20 30 3b 09 20 20 20 | 20 7b 20 6f 72 61 6e 67 |= 0;. | { orang|
|000008d0| 65 20 7d 0d 20 20 63 6f | 6c 52 45 44 5b 38 5d 20 |e }. co|lRED[8] |
|000008e0| 20 3a 3d 20 36 35 35 33 | 35 3b 20 63 6f 6c 47 52 | := 6553|5; colGR|
|000008f0| 45 45 4e 5b 38 5d 20 20 | 3a 3d 20 30 3b 20 20 20 |EEN[8] |:= 0; |
|00000900| 20 20 63 6f 6c 42 4c 55 | 45 5b 38 5d 20 20 3a 3d | colBLU|E[8] :=|
|00000910| 20 30 3b 09 20 20 20 20 | 7b 20 72 65 64 20 7d 0d | 0;. |{ red }.|
|00000920| 20 20 63 6f 6c 52 45 44 | 5b 39 5d 20 20 3a 3d 20 | colRED|[9] := |
|00000930| 36 35 35 33 35 3b 20 63 | 6f 6c 47 52 45 45 4e 5b |65535; c|olGREEN[|
|00000940| 39 5d 20 20 3a 3d 20 36 | 35 35 33 35 3b 20 63 6f |9] := 6|5535; co|
|00000950| 6c 42 4c 55 45 5b 39 5d | 20 20 3a 3d 20 36 35 35 |lBLUE[9]| := 655|
|00000960| 33 35 3b 09 7b 20 77 68 | 69 74 65 20 7d 0d 20 20 |35;.{ wh|ite }. |
|00000970| 63 6f 6c 52 45 44 5b 31 | 30 5d 20 3a 3d 20 34 39 |colRED[1|0] := 49|
|00000980| 31 35 30 3b 20 63 6f 6c | 47 52 45 45 4e 5b 31 30 |150; col|GREEN[10|
|00000990| 5d 20 3a 3d 20 34 39 31 | 35 30 3b 20 63 6f 6c 42 |] := 491|50; colB|
|000009a0| 4c 55 45 5b 31 30 5d 20 | 3a 3d 20 34 39 31 35 30 |LUE[10] |:= 49150|
|000009b0| 3b 09 7b 20 6c 69 67 68 | 74 20 67 72 65 79 20 7d |;.{ ligh|t grey }|
|000009c0| 0d 20 20 63 6f 6c 52 45 | 44 5b 31 31 5d 20 3a 3d |. colRE|D[11] :=|
|000009d0| 20 33 32 37 36 37 3b 20 | 63 6f 6c 47 52 45 45 4e | 32767; |colGREEN|
|000009e0| 5b 31 31 5d 20 3a 3d 20 | 33 32 37 36 37 3b 20 63 |[11] := |32767; c|
|000009f0| 6f 6c 42 4c 55 45 5b 31 | 31 5d 20 3a 3d 20 33 32 |olBLUE[1|1] := 32|
|00000a00| 37 36 37 3b 09 7b 20 67 | 72 65 79 20 7d 0d 20 20 |767;.{ g|rey }. |
|00000a10| 63 6f 6c 52 45 44 5b 31 | 32 5d 20 3a 3d 20 31 36 |colRED[1|2] := 16|
|00000a20| 33 38 33 3b 20 63 6f 6c | 47 52 45 45 4e 5b 31 32 |383; col|GREEN[12|
|00000a30| 5d 20 3a 3d 20 31 36 33 | 38 33 3b 20 63 6f 6c 42 |] := 163|83; colB|
|00000a40| 4c 55 45 5b 31 32 5d 20 | 3a 3d 20 31 36 33 38 33 |LUE[12] |:= 16383|
|00000a50| 3b 09 7b 20 64 61 72 6b | 20 67 72 65 79 20 7d 0d |;.{ dark| grey }.|
|00000a60| 65 6e 64 3b 0d 0d 7b 20 | 57 65 20 64 65 66 69 6e |end;..{ |We defin|
|00000a70| 65 20 61 20 6c 6f 63 61 | 6c 20 70 72 6f 63 65 64 |e a loca|l proced|
|00000a80| 75 72 65 20 74 6f 20 73 | 65 74 20 74 68 65 20 64 |ure to s|et the d|
|00000a90| 69 66 66 65 72 65 6e 74 | 20 73 68 61 64 65 73 20 |ifferent| shades |
|00000aa0| 6f 66 20 63 6f 6c 6f 72 | 2e 20 7d 0d 70 72 6f 63 |of color|. }.proc|
|00000ab0| 65 64 75 72 65 20 43 61 | 6c 63 53 65 74 46 69 74 |edure Ca|lcSetFit|
|00000ac0| 43 6f 6c 6f 72 28 6c 65 | 6e 2c 6d 6f 64 65 29 3b |Color(le|n,mode);|
|00000ad0| 0d 76 61 72 20 74 68 65 | 63 6f 6c 6f 72 2c 20 72 |.var the|color, r|
|00000ae0| 65 64 43 2c 20 62 6c 75 | 65 43 2c 20 67 72 65 65 |edC, blu|eC, gree|
|00000af0| 6e 43 3b 0d 62 65 67 69 | 6e 0d 20 20 69 66 20 6c |nC;.begi|n. if l|
|00000b00| 65 6e 20 3c 20 30 20 74 | 68 65 6e 0d 20 20 20 20 |en < 0 t|hen. |
|00000b10| 74 68 65 63 6f 6c 6f 72 | 20 3a 3d 20 63 6f 6c 6f |thecolor| := colo|
|00000b20| 72 32 0d 20 20 65 6c 73 | 65 0d 20 20 20 20 74 68 |r2. els|e. th|
|00000b30| 65 63 6f 6c 6f 72 20 3a | 3d 20 63 6f 6c 6f 72 31 |ecolor :|= color1|
|00000b40| 3b 0d 20 20 72 65 64 43 | 20 3a 3d 20 63 6f 6c 52 |;. redC| := colR|
|00000b50| 45 44 5b 74 68 65 63 6f | 6c 6f 72 5d 2d 6d 6f 64 |ED[theco|lor]-mod|
|00000b60| 65 2a 31 30 30 30 3b 20 | 69 66 20 28 72 65 64 43 |e*1000; |if (redC|
|00000b70| 20 3c 20 30 29 20 74 68 | 65 6e 20 72 65 64 43 20 | < 0) th|en redC |
|00000b80| 3a 3d 20 30 3b 0d 20 20 | 67 72 65 65 6e 43 20 3a |:= 0;. |greenC :|
|00000b90| 3d 20 63 6f 6c 47 52 45 | 45 4e 5b 74 68 65 63 6f |= colGRE|EN[theco|
|00000ba0| 6c 6f 72 5d 2d 6d 6f 64 | 65 2a 31 30 30 30 3b 20 |lor]-mod|e*1000; |
|00000bb0| 69 66 20 28 67 72 65 65 | 6e 43 20 3c 20 30 29 20 |if (gree|nC < 0) |
|00000bc0| 74 68 65 6e 20 67 72 65 | 65 6e 43 20 3a 3d 20 30 |then gre|enC := 0|
|00000bd0| 3b 0d 20 20 62 6c 75 65 | 43 20 3a 3d 20 63 6f 6c |;. blue|C := col|
|00000be0| 42 4c 55 45 5b 74 68 65 | 63 6f 6c 6f 72 5d 2d 6d |BLUE[the|color]-m|
|00000bf0| 6f 64 65 2a 31 30 30 30 | 3b 20 69 66 20 28 62 6c |ode*1000|; if (bl|
|00000c00| 75 65 43 20 3c 20 30 29 | 20 74 68 65 6e 20 62 6c |ueC < 0)| then bl|
|00000c10| 75 65 43 20 3a 3d 20 30 | 3b 0d 20 20 53 65 74 46 |ueC := 0|;. SetF|
|00000c20| 69 6c 6c 43 6f 6c 6f 72 | 28 72 65 64 43 2c 20 67 |illColor|(redC, g|
|00000c30| 72 65 65 6e 43 2c 20 62 | 6c 75 65 43 29 3b 0d 65 |reenC, b|lueC);.e|
|00000c40| 6e 64 3b 0d 0d 7b 20 54 | 68 69 73 20 70 72 6f 63 |nd;..{ T|his proc|
|00000c50| 65 64 75 72 65 20 64 6f | 65 73 20 74 68 65 20 6d |edure do|es the m|
|00000c60| 61 70 70 69 6e 67 20 6f | 66 20 33 2d 44 20 63 6f |apping o|f 3-D co|
|00000c70| 6f 72 64 69 6e 61 74 65 | 73 20 6f 6e 74 6f 20 74 |ordinate|s onto t|
|00000c80| 68 65 20 7d 0d 7b 20 73 | 63 72 65 65 6e 20 63 6f |he }.{ s|creen co|
|00000c90| 6f 72 64 69 6e 61 74 65 | 73 20 7d 0d 70 72 6f 63 |ordinate|s }.proc|
|00000ca0| 65 64 75 72 65 20 44 6f | 33 44 74 6f 32 44 28 63 |edure Do|3Dto2D(c|
|00000cb0| 6f 6c 2c 20 72 6f 77 2c | 20 64 65 70 2c 20 68 6f |ol, row,| dep, ho|
|00000cc0| 72 2c 20 7a 2c 20 64 6f | 6c 69 6e 65 29 3b 0d 76 |r, z, do|line);.v|
|00000cd0| 61 72 20 61 6c 70 68 61 | 2c 20 72 61 64 69 75 73 |ar alpha|, radius|
|00000ce0| 2c 20 78 2c 20 79 3b 0d | 62 65 67 69 6e 0d 20 20 |, x, y;.|begin. |
|00000cf0| 78 20 3a 3d 20 72 6f 77 | 2a 64 69 73 48 20 2b 20 |x := row|*disH + |
|00000d00| 68 6f 72 3b 0d 20 20 79 | 20 3a 3d 20 63 6f 6c 2a |hor;. y| := col*|
|00000d10| 64 69 73 56 20 2b 20 64 | 65 70 3b 0d 20 20 69 66 |disV + d|ep;. if|
|00000d20| 20 78 20 3d 20 30 20 74 | 68 65 6e 0d 20 20 20 20 | x = 0 t|hen. |
|00000d30| 69 66 20 79 20 3c 20 30 | 20 74 68 65 6e 0d 20 20 |if y < 0| then. |
|00000d40| 09 09 20 20 61 6c 70 68 | 61 20 3a 3d 20 31 2e 35 |.. alph|a := 1.5|
|00000d50| 2a b9 0d 20 20 09 09 65 | 6c 73 65 0d 09 09 20 20 |*.. ..e|lse... |
|00000d60| 20 20 61 6c 70 68 61 20 | 3a 3d 20 b9 2f 32 0d 09 | alpha |:= ./2..|
|00000d70| 09 65 6c 73 65 0d 20 20 | 20 20 61 6c 70 68 61 20 |.else. | alpha |
|00000d80| 3a 3d 20 61 72 63 74 61 | 6e 28 79 2f 78 29 3b 0d |:= arcta|n(y/x);.|
|00000d90| 20 20 69 66 20 78 20 3c | 20 30 20 74 68 65 6e 0d | if x <| 0 then.|
|00000da0| 20 20 20 20 61 6c 70 68 | 61 20 3a 3d 20 61 6c 70 | alph|a := alp|
|00000db0| 68 61 20 2b 20 b9 3b 0d | 20 20 61 6c 70 68 61 20 |ha + .;.| alpha |
|00000dc0| 3a 3d 20 61 6c 70 68 61 | 20 2b 20 70 68 69 3b 0d |:= alpha| + phi;.|
|00000dd0| 20 20 72 61 64 69 75 73 | 20 3a 3d 20 73 71 72 74 | radius| := sqrt|
|00000de0| 28 78 2a 78 20 2b 20 79 | 2a 79 29 3b 0d 20 20 70 |(x*x + y|*y);. p|
|00000df0| 68 68 20 3a 3d 20 70 6f | 73 48 20 2b 20 72 61 64 |hh := po|sH + rad|
|00000e00| 69 75 73 2a 63 6f 73 28 | 61 6c 70 68 61 29 3b 0d |ius*cos(|alpha);.|
|00000e10| 20 20 70 76 76 20 3a 3d | 20 70 6f 73 56 20 2b 20 | pvv :=| posV + |
|00000e20| 72 61 64 69 75 73 2a 73 | 69 6e 28 61 6c 70 68 61 |radius*s|in(alpha|
|00000e30| 29 2a 73 69 6e 28 74 68 | 65 74 61 29 20 2d 20 7a |)*sin(th|eta) - z|
|00000e40| 2a 63 6f 73 28 74 68 65 | 74 61 29 3b 0d 20 20 69 |*cos(the|ta);. i|
|00000e50| 66 20 64 6f 6c 69 6e 65 | 20 74 68 65 6e 0d 20 20 |f doline| then. |
|00000e60| 20 20 4c 69 6e 65 54 6f | 28 70 68 68 2c 20 70 76 | LineTo|(phh, pv|
|00000e70| 76 29 0d 20 20 65 6c 73 | 65 0d 20 20 20 20 4d 6f |v). els|e. Mo|
|00000e80| 76 65 54 6f 28 70 68 68 | 2c 20 70 76 76 29 3b 0d |veTo(phh|, pvv);.|
|00000e90| 65 6e 64 3b 0d 0d 7b 20 | 44 72 61 77 73 20 61 6c |end;..{ |Draws al|
|00000ea0| 6c 20 6e 65 67 61 74 69 | 76 65 20 6f 72 20 61 6c |l negati|ve or al|
|00000eb0| 6c 20 70 6f 73 69 74 69 | 76 65 20 62 61 72 73 2c |l positi|ve bars,|
|00000ec0| 20 64 65 70 65 6e 64 69 | 6e 67 20 6f 6e 20 74 68 | dependi|ng on th|
|00000ed0| 65 20 70 61 72 61 6d 65 | 74 65 72 20 73 69 67 6e |e parame|ter sign|
|00000ee0| 2e 20 7d 0d 70 72 6f 63 | 65 64 75 72 65 20 44 72 |. }.proc|edure Dr|
|00000ef0| 61 77 43 68 61 72 74 73 | 28 73 69 67 6e 29 3b 0d |awCharts|(sign);.|
|00000f00| 76 61 72 20 6c 65 6e 3b | 0d 62 65 67 69 6e 0d 20 |var len;|.begin. |
|00000f10| 53 65 74 46 69 6c 6c 50 | 61 74 74 65 72 6e 28 32 |SetFillP|attern(2|
|00000f20| 29 3b 09 09 7b 20 66 75 | 6c 6c 20 63 6f 6c 6f 72 |);..{ fu|ll color|
|00000f30| 20 7d 0d 20 20 66 6f 72 | 20 69 3a 3d 20 66 63 6f | }. for| i:= fco|
|00000f40| 6c 20 74 6f 20 6c 63 6f | 6c 20 64 6f 0d 09 62 65 |l to lco|l do..be|
|00000f50| 67 69 6e 0d 09 20 20 47 | 72 6f 75 70 42 65 67 69 |gin.. G|roupBegi|
|00000f60| 6e 3b 0d 09 09 20 66 6f | 72 20 6a 3a 3d 20 66 72 |n;... fo|r j:= fr|
|00000f70| 6f 77 20 74 6f 20 6c 72 | 6f 77 20 64 6f 0d 20 20 |ow to lr|ow do. |
|00000f80| 09 09 69 66 20 64 61 74 | 61 4f 4b 28 6a 2c 69 29 |..if dat|aOK(j,i)|
|00000f90| 20 74 68 65 6e 0d 20 20 | 09 09 20 20 62 65 67 69 | then. |.. begi|
|00000fa0| 6e 0d 20 20 09 09 20 20 | 09 09 6c 65 6e 20 3a 3d |n. .. |..len :=|
|00000fb0| 20 64 61 74 61 5b 6a 2c | 69 5d 20 2a 20 6e 6f 72 | data[j,|i] * nor|
|00000fc0| 6d 3b 0d 09 09 20 20 09 | 09 20 20 69 66 20 28 28 |m;... .|. if ((|
|00000fd0| 6c 65 6e 20 3c 20 30 29 | 20 61 6e 64 20 28 73 69 |len < 0)| and (si|
|00000fe0| 67 6e 20 3c 20 30 29 29 | 20 6f 72 20 28 28 6c 65 |gn < 0))| or ((le|
|00000ff0| 6e 20 3e 3d 20 30 29 20 | 61 6e 64 20 28 73 69 67 |n >= 0) |and (sig|
|00001000| 6e 20 3e 20 30 29 29 20 | 74 68 65 6e 0d 20 20 09 |n > 0)) |then. .|
|00001010| 09 20 20 09 09 62 65 67 | 69 6e 0d 09 09 20 20 09 |. ..beg|in... .|
|00001020| 09 20 20 20 20 43 61 6c | 63 53 65 74 46 69 74 43 |. Cal|cSetFitC|
|00001030| 6f 6c 6f 72 28 6c 65 6e | 2c 30 29 3b 0d 20 20 20 |olor(len|,0);. |
|00001040| 20 09 09 20 20 09 09 44 | 6f 33 44 74 6f 32 44 28 | .. ..D|o3Dto2D(|
|00001050| 69 2d 66 63 6f 6c 2c 20 | 6a 2d 66 72 6f 77 2c 20 |i-fcol, |j-frow, |
|00001060| 74 68 69 63 6b 2c 20 74 | 68 69 63 6b 2c 20 30 2c |thick, t|hick, 0,|
|00001070| 20 30 29 3b 0d 20 20 09 | 09 20 20 20 20 20 20 4f | 0);. .|. O|
|00001080| 70 65 6e 50 6f 6c 79 28 | 30 2c 20 74 72 75 65 29 |penPoly(|0, true)|
|00001090| 3b 0d 20 20 20 20 20 20 | 09 09 20 20 44 6f 33 44 |;. |.. Do3D|
|000010a0| 74 6f 32 44 28 69 2d 66 | 63 6f 6c 2c 20 6a 2d 66 |to2D(i-f|col, j-f|
|000010b0| 72 6f 77 2c 20 74 68 69 | 63 6b 2c 20 2d 74 68 69 |row, thi|ck, -thi|
|000010c0| 63 6b 2c 20 30 2c 20 31 | 29 3b 0d 20 20 20 20 20 |ck, 0, 1|);. |
|000010d0| 20 20 20 20 20 44 6f 33 | 44 74 6f 32 44 28 69 2d | Do3|Dto2D(i-|
|000010e0| 66 63 6f 6c 2c 20 6a 2d | 66 72 6f 77 2c 20 74 68 |fcol, j-|frow, th|
|000010f0| 69 63 6b 2c 20 2d 74 68 | 69 63 6b 2c 20 6c 65 6e |ick, -th|ick, len|
|00001100| 2c 20 31 29 3b 0d 20 20 | 20 20 20 20 20 20 20 20 |, 1);. | |
|00001110| 44 6f 33 44 74 6f 32 44 | 28 69 2d 66 63 6f 6c 2c |Do3Dto2D|(i-fcol,|
|00001120| 20 6a 2d 66 72 6f 77 2c | 20 74 68 69 63 6b 2c 20 | j-frow,| thick, |
|00001130| 74 68 69 63 6b 2c 20 6c | 65 6e 2c 20 31 29 3b 0d |thick, l|en, 1);.|
|00001140| 20 20 20 20 20 20 20 20 | 20 20 43 6c 6f 73 65 50 | | CloseP|
|00001150| 6f 6c 79 3b 0d 20 20 20 | 20 20 20 20 20 20 20 43 |oly;. | C|
|00001160| 61 6c 63 53 65 74 46 69 | 74 43 6f 6c 6f 72 28 6c |alcSetFi|tColor(l|
|00001170| 65 6e 2c 32 30 29 3b 0d | 20 20 20 20 20 20 20 20 |en,20);.| |
|00001180| 20 20 44 6f 33 44 74 6f | 32 44 28 69 2d 66 63 6f | Do3Dto|2D(i-fco|
|00001190| 6c 2c 20 6a 2d 66 72 6f | 77 2c 20 74 68 69 63 6b |l, j-fro|w, thick|
|000011a0| 2c 20 74 68 69 63 6b 2c | 20 30 2c 20 30 29 3b 0d |, thick,| 0, 0);.|
|000011b0| 20 20 09 09 20 20 20 20 | 20 20 4f 70 65 6e 50 6f | .. | OpenPo|
|000011c0| 6c 79 28 30 2c 20 74 72 | 75 65 29 3b 0d 20 20 20 |ly(0, tr|ue);. |
|000011d0| 20 20 20 09 09 20 20 44 | 6f 33 44 74 6f 32 44 28 | .. D|o3Dto2D(|
|000011e0| 69 2d 66 63 6f 6c 2c 20 | 6a 2d 66 72 6f 77 2c 20 |i-fcol, |j-frow, |
|000011f0| 2d 74 68 69 63 6b 2c 20 | 74 68 69 63 6b 2c 20 30 |-thick, |thick, 0|
|00001200| 2c 20 31 29 3b 0d 20 20 | 09 09 20 20 20 20 20 20 |, 1);. |.. |
|00001210| 44 6f 33 44 74 6f 32 44 | 28 69 2d 66 63 6f 6c 2c |Do3Dto2D|(i-fcol,|
|00001220| 20 6a 2d 66 72 6f 77 2c | 20 2d 74 68 69 63 6b 2c | j-frow,| -thick,|
|00001230| 20 74 68 69 63 6b 2c 20 | 6c 65 6e 2c 20 31 29 3b | thick, |len, 1);|
|00001240| 0d 20 20 20 20 20 20 09 | 09 20 20 44 6f 33 44 74 |. .|. Do3Dt|
|00001250| 6f 32 44 28 69 2d 66 63 | 6f 6c 2c 20 6a 2d 66 72 |o2D(i-fc|ol, j-fr|
|00001260| 6f 77 2c 20 74 68 69 63 | 6b 2c 20 74 68 69 63 6b |ow, thic|k, thick|
|00001270| 2c 20 6c 65 6e 2c 20 31 | 29 3b 0d 20 20 20 20 20 |, len, 1|);. |
|00001280| 20 20 20 20 20 43 6c 6f | 73 65 50 6f 6c 79 3b 0d | Clo|sePoly;.|
|00001290| 20 20 20 20 20 20 20 20 | 20 20 43 61 6c 63 53 65 | | CalcSe|
|000012a0| 74 46 69 74 43 6f 6c 6f | 72 28 6c 65 6e 2c 35 29 |tFitColo|r(len,5)|
|000012b0| 3b 0d 20 20 20 20 20 20 | 20 20 20 20 69 66 20 6c |;. | if l|
|000012c0| 65 6e 20 3c 20 30 20 74 | 68 65 6e 0d 20 20 20 20 |en < 0 t|hen. |
|000012d0| 20 20 20 20 20 20 20 20 | 6c 65 6e 20 3a 3d 20 30 | |len := 0|
|000012e0| 3b 0d 20 20 20 20 20 20 | 20 20 20 20 44 6f 33 44 |;. | Do3D|
|000012f0| 74 6f 32 44 28 69 2d 66 | 63 6f 6c 2c 20 6a 2d 66 |to2D(i-f|col, j-f|
|00001300| 72 6f 77 2c 20 74 68 69 | 63 6b 2c 20 74 68 69 63 |row, thi|ck, thic|
|00001310| 6b 2c 20 6c 65 6e 2c 20 | 30 29 3b 0d 20 20 09 09 |k, len, |0);. ..|
|00001320| 20 20 20 20 20 20 4f 70 | 65 6e 50 6f 6c 79 28 30 | Op|enPoly(0|
|00001330| 2c 20 74 72 75 65 29 3b | 0d 20 20 20 20 20 20 09 |, true);|. .|
|00001340| 09 20 20 44 6f 33 44 74 | 6f 32 44 28 69 2d 66 63 |. Do3Dt|o2D(i-fc|
|00001350| 6f 6c 2c 20 6a 2d 66 72 | 6f 77 2c 20 74 68 69 63 |ol, j-fr|ow, thic|
|00001360| 6b 2c 20 2d 74 68 69 63 | 6b 2c 20 6c 65 6e 2c 20 |k, -thic|k, len, |
|00001370| 31 29 3b 0d 20 20 09 09 | 20 20 20 20 20 20 44 6f |1);. ..| Do|
|00001380| 33 44 74 6f 32 44 28 69 | 2d 66 63 6f 6c 2c 20 6a |3Dto2D(i|-fcol, j|
|00001390| 2d 66 72 6f 77 2c 20 2d | 74 68 69 63 6b 2c 20 2d |-frow, -|thick, -|
|000013a0| 74 68 69 63 6b 2c 20 6c | 65 6e 2c 20 31 29 3b 0d |thick, l|en, 1);.|
|000013b0| 20 20 20 20 20 20 09 09 | 20 20 44 6f 33 44 74 6f | ..| Do3Dto|
|000013c0| 32 44 28 69 2d 66 63 6f | 6c 2c 20 6a 2d 66 72 6f |2D(i-fco|l, j-fro|
|000013d0| 77 2c 20 2d 74 68 69 63 | 6b 2c 20 74 68 69 63 6b |w, -thic|k, thick|
|000013e0| 2c 20 6c 65 6e 2c 20 31 | 29 3b 0d 20 20 20 20 20 |, len, 1|);. |
|000013f0| 20 20 20 20 20 43 6c 6f | 73 65 50 6f 6c 79 3b 0d | Clo|sePoly;.|
|00001400| 20 20 20 20 20 20 20 20 | 65 6e 64 3b 0d 20 20 20 | |end;. |
|00001410| 20 20 20 65 6e 64 3b 0d | 20 20 20 20 47 72 6f 75 | end;.| Grou|
|00001420| 70 45 6e 64 3b 0d 20 20 | 65 6e 64 3b 0d 65 6e 64 |pEnd;. |end;.end|
|00001430| 3b 0d 0d 7b 20 44 72 61 | 77 73 20 61 20 6c 69 6e |;..{ Dra|ws a lin|
|00001440| 65 20 67 72 69 64 20 61 | 74 20 76 61 6c 75 65 20 |e grid a|t value |
|00001450| 30 2e 20 7d 0d 70 72 6f | 63 65 64 75 72 65 20 44 |0. }.pro|cedure D|
|00001460| 72 61 77 54 68 65 47 72 | 69 64 3b 0d 62 65 67 69 |rawTheGr|id;.begi|
|00001470| 6e 0d 20 47 72 6f 75 70 | 42 65 67 69 6e 3b 0d 20 |n. Group|Begin;. |
|00001480| 66 6f 72 20 69 3a 3d 20 | 66 63 6f 6c 20 74 6f 20 |for i:= |fcol to |
|00001490| 6c 63 6f 6c 20 64 6f 0d | 09 62 65 67 69 6e 0d 09 |lcol do.|.begin..|
|000014a0| 20 20 44 6f 33 44 74 6f | 32 44 28 69 2d 66 63 6f | Do3Dto|2D(i-fco|
|000014b0| 6c 2c 20 30 2c 20 30 2c | 20 30 2c 20 30 2c 20 30 |l, 0, 0,| 0, 0, 0|
|000014c0| 29 3b 0d 20 20 09 44 6f | 33 44 74 6f 32 44 28 69 |);. .Do|3Dto2D(i|
|000014d0| 2d 66 63 6f 6c 2c 20 6c | 72 6f 77 2d 66 72 6f 77 |-fcol, l|row-frow|
|000014e0| 2c 20 30 2c 20 30 2c 20 | 30 2c 20 31 29 3b 0d 20 |, 0, 0, |0, 1);. |
|000014f0| 65 6e 64 3b 0d 20 66 6f | 72 20 6a 3a 3d 20 66 72 |end;. fo|r j:= fr|
|00001500| 6f 77 20 74 6f 20 6c 72 | 6f 77 20 64 6f 0d 09 62 |ow to lr|ow do..b|
|00001510| 65 67 69 6e 0d 09 20 20 | 44 6f 33 44 74 6f 32 44 |egin.. |Do3Dto2D|
|00001520| 28 30 2c 20 6a 2d 66 72 | 6f 77 2c 20 30 2c 20 30 |(0, j-fr|ow, 0, 0|
|00001530| 2c 20 30 2c 20 30 29 3b | 0d 20 20 09 44 6f 33 44 |, 0, 0);|. .Do3D|
|00001540| 74 6f 32 44 28 6c 63 6f | 6c 2d 66 63 6f 6c 2c 20 |to2D(lco|l-fcol, |
|00001550| 6a 2d 66 72 6f 77 2c 20 | 30 2c 20 30 2c 20 30 2c |j-frow, |0, 0, 0,|
|00001560| 20 31 29 3b 0d 20 65 6e | 64 3b 0d 20 47 72 6f 75 | 1);. en|d;. Grou|
|00001570| 70 45 6e 64 3b 0d 65 6e | 64 3b 0d 0d 7b 20 4d 61 |pEnd;.en|d;..{ Ma|
|00001580| 69 6e 20 70 72 6f 67 72 | 61 6d 20 7d 0d 62 65 67 |in progr|am }.beg|
|00001590| 69 6e 0d 20 20 64 61 74 | 61 57 69 6e 64 49 44 20 |in. dat|aWindID |
|000015a0| 3a 3d 20 47 65 74 43 75 | 72 72 65 6e 74 57 69 6e |:= GetCu|rrentWin|
|000015b0| 64 6f 77 28 64 61 74 61 | 54 79 70 65 29 3b 09 20 |dow(data|Type);. |
|000015c0| 20 7b 20 63 68 65 63 6b | 20 66 6f 72 20 61 20 64 | { check| for a d|
|000015d0| 61 74 61 20 77 69 6e 64 | 6f 77 20 7d 0d 20 20 69 |ata wind|ow }. i|
|000015e0| 66 20 28 64 61 74 61 57 | 69 6e 64 49 44 20 3d 20 |f (dataW|indID = |
|000015f0| 30 29 20 74 68 65 6e 0d | 20 20 62 65 67 69 6e 0d |0) then.| begin.|
|00001600| 20 20 20 20 41 6c 65 72 | 74 28 27 54 68 65 72 65 | Aler|t('There|
|00001610| 20 69 73 20 6e 6f 20 64 | 61 74 61 20 74 6f 20 62 | is no d|ata to b|
|00001620| 65 20 64 72 61 77 6e 2e | 27 29 3b 0d 20 20 09 09 |e drawn.|');. ..|
|00001630| 48 61 6c 74 3b 0d 09 09 | 65 6e 64 3b 0d 20 20 64 |Halt;...|end;. d|
|00001640| 72 61 77 57 69 6e 64 49 | 44 20 3a 3d 20 46 72 6f |rawWindI|D := Fro|
|00001650| 6e 74 6d 6f 73 74 57 69 | 6e 64 6f 77 28 64 72 61 |ntmostWi|ndow(dra|
|00001660| 77 69 6e 67 54 79 70 65 | 29 3b 09 7b 20 63 68 65 |wingType|);.{ che|
|00001670| 63 6b 20 66 6f 72 20 61 | 20 64 72 61 77 69 6e 67 |ck for a| drawing|
|00001680| 20 77 69 6e 64 6f 77 20 | 7d 0d 20 20 69 66 20 28 | window |}. if (|
|00001690| 64 72 61 77 57 69 6e 64 | 49 44 20 3d 20 30 29 20 |drawWind|ID = 0) |
|000016a0| 74 68 65 6e 0d 20 20 62 | 65 67 69 6e 0d 20 20 09 |then. b|egin. .|
|000016b0| 09 4e 65 77 57 69 6e 64 | 6f 77 28 64 72 61 77 69 |.NewWind|ow(drawi|
|000016c0| 6e 67 54 79 70 65 29 3b | 20 20 20 20 20 20 20 20 |ngType);| |
|000016d0| 20 20 20 20 20 20 20 20 | 20 20 20 7b 20 6f 70 65 | | { ope|
|000016e0| 6e 20 61 20 6e 65 77 20 | 6f 6e 65 20 69 66 20 6e |n a new |one if n|
|000016f0| 65 63 65 73 73 61 72 79 | 20 7d 0d 09 20 20 09 64 |ecessary| }.. .d|
|00001700| 72 61 77 57 69 6e 64 49 | 44 20 3a 3d 20 46 72 6f |rawWindI|D := Fro|
|00001710| 6e 74 6d 6f 73 74 57 69 | 6e 64 6f 77 28 64 72 61 |ntmostWi|ndow(dra|
|00001720| 77 69 6e 67 54 79 70 65 | 29 3b 0d 20 20 20 20 69 |wingType|);. i|
|00001730| 66 20 28 64 72 61 77 57 | 69 6e 64 49 44 20 3d 20 |f (drawW|indID = |
|00001740| 30 29 20 74 68 65 6e 0d | 20 20 20 20 62 65 67 69 |0) then.| begi|
|00001750| 6e 0d 20 20 20 20 20 20 | 41 6c 65 72 74 28 27 43 |n. |Alert('C|
|00001760| 6f 75 6c 64 20 6e 6f 74 | 20 6f 70 65 6e 20 61 20 |ould not| open a |
|00001770| 6e 65 77 20 64 72 61 77 | 69 6e 67 20 77 69 6e 64 |new draw|ing wind|
|00001780| 6f 77 2e 27 29 3b 0d 20 | 20 09 20 20 09 48 61 6c |ow.');. | . .Hal|
|00001790| 74 3b 0d 09 09 20 20 65 | 6e 64 3b 0d 20 20 65 6e |t;... e|nd;. en|
|000017a0| 64 0d 09 09 65 6c 73 65 | 0d 09 09 20 20 42 72 69 |d...else|... Bri|
|000017b0| 6e 67 57 69 6e 64 6f 77 | 54 6f 46 72 6f 6e 74 28 |ngWindow|ToFront(|
|000017c0| 64 72 61 77 57 69 6e 64 | 49 44 29 3b 0d 20 20 0d |drawWind|ID);. .|
|000017d0| 09 09 49 6e 70 75 74 28 | 27 24 43 46 69 72 73 74 |..Input(|'$CFirst|
|000017e0| 20 63 6f 6c 75 6d 6e 27 | 2c 20 66 63 6f 6c 2c 20 | column'|, fcol, |
|000017f0| 27 24 43 4c 61 73 74 20 | 63 6f 6c 75 6d 6e 27 2c |'$CLast |column',|
|00001800| 20 6c 63 6f 6c 2c 0d 09 | 09 20 20 27 46 69 72 73 | lcol,..|. 'Firs|
|00001810| 74 20 72 6f 77 27 2c 20 | 66 72 6f 77 2c 20 27 4c |t row', |frow, 'L|
|00001820| 61 73 74 20 72 6f 77 27 | 2c 20 6c 72 6f 77 2c 0d |ast row'|, lrow,.|
|00001830| 09 09 20 20 27 24 50 6d | 61 67 65 6e 74 61 3b 62 |.. '$Pm|agenta;b|
|00001840| 6c 75 65 3b 63 79 61 6e | 3b 64 61 72 6b 20 67 72 |lue;cyan|;dark gr|
|00001850| 65 65 6e 3b 6c 69 67 68 | 74 20 67 72 65 65 6e 3b |een;ligh|t green;|
|00001860| 79 65 6c 6c 6f 77 3b 6f | 72 61 6e 67 65 3b 72 65 |yellow;o|range;re|
|00001870| 64 3b 77 68 69 74 65 3b | 6c 69 67 68 74 20 67 72 |d;white;|light gr|
|00001880| 61 79 3b 67 72 61 79 3b | 64 61 72 6b 20 67 72 61 |ay;gray;|dark gra|
|00001890| 79 24 43 6f 6c 6f 72 20 | 69 66 20 70 6f 73 69 74 |y$Color |if posit|
|000018a0| 69 76 65 27 2c 20 63 6f | 6c 6f 72 31 2c 0d 20 20 |ive', co|lor1,. |
|000018b0| 09 09 27 24 50 6d 61 67 | 65 6e 74 61 3b 62 6c 75 |..'$Pmag|enta;blu|
|000018c0| 65 3b 63 79 61 6e 3b 64 | 61 72 6b 20 67 72 65 65 |e;cyan;d|ark gree|
|000018d0| 6e 3b 6c 69 67 68 74 20 | 67 72 65 65 6e 3b 79 65 |n;light |green;ye|
|000018e0| 6c 6c 6f 77 3b 6f 72 61 | 6e 67 65 3b 72 65 64 3b |llow;ora|nge;red;|
|000018f0| 77 68 69 74 65 3b 6c 69 | 67 68 74 20 67 72 61 79 |white;li|ght gray|
|00001900| 3b 67 72 61 79 3b 64 61 | 72 6b 20 67 72 61 79 24 |;gray;da|rk gray$|
|00001910| 43 6f 6c 6f 72 20 69 66 | 20 6e 65 67 61 74 69 76 |Color if| negativ|
|00001920| 65 27 2c 20 63 6f 6c 6f | 72 32 29 3b 0d 20 20 69 |e', colo|r2);. i|
|00001930| 66 20 28 6c 72 6f 77 20 | 3c 3d 20 66 72 6f 77 29 |f (lrow |<= frow)|
|00001940| 20 74 68 65 6e 0d 20 20 | 20 09 64 69 73 48 20 3a | then. | .disH :|
|00001950| 3d 20 74 6f 74 48 0d 09 | 20 65 6c 73 65 0d 20 09 |= totH..| else. .|
|00001960| 20 20 64 69 73 48 20 3a | 3d 20 74 6f 74 48 20 2f | disH :|= totH /|
|00001970| 20 28 6c 72 6f 77 20 2d | 20 66 72 6f 77 29 3b 0d | (lrow -| frow);.|
|00001980| 20 20 69 66 20 28 6c 63 | 6f 6c 20 3c 3d 20 66 63 | if (lc|ol <= fc|
|00001990| 6f 6c 29 20 74 68 65 6e | 0d 20 20 20 09 64 69 73 |ol) then|. .dis|
|000019a0| 56 20 3a 3d 20 74 6f 74 | 56 0d 09 20 65 6c 73 65 |V := tot|V.. else|
|000019b0| 0d 20 09 20 20 64 69 73 | 56 20 3a 3d 20 74 6f 74 |. . dis|V := tot|
|000019c0| 56 20 2f 20 28 6c 63 6f | 6c 20 2d 20 66 63 6f 6c |V / (lco|l - fcol|
|000019d0| 29 3b 0d 20 20 0d 09 09 | 49 6e 70 75 74 28 27 52 |);. ...|Input('R|
|000019e0| 6f 74 61 74 69 6f 6e 20 | 61 6e 67 6c 65 27 2c 20 |otation |angle', |
|000019f0| 70 68 69 30 2c 20 27 53 | 6c 61 6e 74 20 61 6e 67 |phi0, 'S|lant ang|
|00001a00| 6c 65 27 2c 20 74 68 65 | 74 61 30 2c 20 27 54 68 |le', the|ta0, 'Th|
|00001a10| 69 63 6b 6e 65 73 73 27 | 2c 20 74 68 69 63 6b 2c |ickness'|, thick,|
|00001a20| 20 27 24 58 44 72 61 77 | 20 6c 69 6e 65 20 67 72 | '$XDraw| line gr|
|00001a30| 69 64 27 2c 20 64 72 61 | 77 47 72 69 64 29 3b 0d |id', dra|wGrid);.|
|00001a40| 20 20 70 68 69 20 3a 3d | 20 70 68 69 30 2a b9 2f | phi :=| phi0*./|
|00001a50| 31 38 30 3b 0d 20 20 74 | 68 65 74 61 20 3a 3d 20 |180;. t|heta := |
|00001a60| 74 68 65 74 61 30 2a b9 | 2f 31 38 30 3b 0d 20 20 |theta0*.|/180;. |
|00001a70| 69 66 20 70 68 69 20 3e | 20 b9 20 74 68 65 6e 20 |if phi >| . then |
|00001a80| 70 68 69 20 3a 3d 20 b9 | 2f 32 3b 0d 20 20 69 66 |phi := .|/2;. if|
|00001a90| 20 70 68 69 20 3c 20 30 | 20 74 68 65 6e 20 70 68 | phi < 0| then ph|
|00001aa0| 69 20 3a 3d 20 30 3b 0d | 20 20 69 66 20 74 68 65 |i := 0;.| if the|
|00001ab0| 74 61 20 3e 20 b9 20 74 | 68 65 6e 20 74 68 65 74 |ta > . t|hen thet|
|00001ac0| 61 20 3a 3d 20 b9 2f 33 | 3b 0d 20 20 69 66 20 74 |a := ./3|;. if t|
|00001ad0| 68 65 74 61 20 3c 20 30 | 20 74 68 65 6e 20 74 68 |heta < 0| then th|
|00001ae0| 65 74 61 20 3a 3d 20 30 | 3b 0d 0d 20 20 53 65 6c |eta := 0|;.. Sel|
|00001af0| 65 63 74 43 65 6c 6c 73 | 28 66 63 6f 6c 2c 20 66 |ectCells|(fcol, f|
|00001b00| 72 6f 77 2c 20 6c 63 6f | 6c 2c 20 6c 72 6f 77 29 |row, lco|l, lrow)|
|00001b10| 3b 0d 20 20 69 66 20 43 | 61 6c 63 53 74 61 74 28 |;. if C|alcStat(|
|00001b20| 30 2c 74 72 75 65 2c 74 | 72 75 65 2c 66 61 6c 73 |0,true,t|rue,fals|
|00001b30| 65 2c 74 72 75 65 29 20 | 74 68 65 6e 09 09 7b 20 |e,true) |then..{ |
|00001b40| 63 61 6c 63 75 6c 61 74 | 65 20 74 68 65 20 6d 61 |calculat|e the ma|
|00001b50| 78 69 6d 75 6d 20 61 6e | 64 20 6d 69 6e 69 6d 75 |ximum an|d minimu|
|00001b60| 6d 20 7d 0d 20 20 62 65 | 67 69 6e 0d 20 20 20 20 |m }. be|gin. |
|00001b70| 47 65 74 4d 65 64 69 61 | 6e 28 6e 72 2c 6d 65 61 |GetMedia|n(nr,mea|
|00001b80| 6e 2c 6d 65 64 2c 6d 69 | 6e 2c 6d 61 78 29 3b 0d |n,med,mi|n,max);.|
|00001b90| 20 20 20 20 0d 20 20 20 | 20 6e 6f 72 6d 20 3a 3d | . | norm :=|
|00001ba0| 20 31 32 30 3b 20 20 20 | 20 20 20 20 20 20 20 20 | 120; | |
|00001bb0| 20 20 20 7b 20 6e 6f 72 | 6d 61 6c 69 7a 65 20 74 | { nor|malize t|
|00001bc0| 68 65 20 68 65 69 67 68 | 74 20 6f 66 20 74 68 65 |he heigh|t of the|
|00001bd0| 20 62 61 72 73 20 7d 0d | 20 20 20 20 69 66 20 2d | bars }.| if -|
|00001be0| 6d 69 6e 20 3e 20 6d 61 | 78 20 74 68 65 6e 0d 20 |min > ma|x then. |
|00001bf0| 20 20 20 20 20 6e 6f 72 | 6d 20 3a 3d 20 2d 6e 6f | nor|m := -no|
|00001c00| 72 6d 2f 6d 69 6e 0d 20 | 20 20 20 65 6c 73 65 0d |rm/min. | else.|
|00001c10| 20 20 20 20 20 20 6e 6f | 72 6d 20 3a 3d 20 6e 6f | no|rm := no|
|00001c20| 72 6d 2f 6d 61 78 3b 0d | 20 20 20 20 0d 20 20 20 |rm/max;.| . |
|00001c30| 20 53 65 74 4c 69 6e 65 | 43 6f 6c 6f 72 28 30 2c | SetLine|Color(0,|
|00001c40| 20 30 2c 20 30 29 3b 20 | 20 20 20 7b 20 73 74 61 | 0, 0); | { sta|
|00001c50| 72 74 20 64 72 61 77 69 | 6e 67 20 7d 0d 20 20 20 |rt drawi|ng }. |
|00001c60| 20 47 72 6f 75 70 42 65 | 67 69 6e 3b 0d 20 20 20 | GroupBe|gin;. |
|00001c70| 20 44 72 61 77 43 68 61 | 72 74 73 28 2d 31 29 3b | DrawCha|rts(-1);|
|00001c80| 0d 20 20 20 20 69 66 20 | 64 72 61 77 47 72 69 64 |. if |drawGrid|
|00001c90| 20 74 68 65 6e 0d 20 20 | 20 09 09 20 44 72 61 77 | then. | .. Draw|
|00001ca0| 54 68 65 47 72 69 64 3b | 0d 20 20 20 20 44 72 61 |TheGrid;|. Dra|
|00001cb0| 77 43 68 61 72 74 73 28 | 31 29 3b 0d 20 20 20 20 |wCharts(|1);. |
|00001cc0| 47 72 6f 75 70 45 6e 64 | 3b 0d 20 20 65 6e 64 0d |GroupEnd|;. end.|
|00001cd0| 20 20 65 6c 73 65 0d 20 | 20 20 20 41 6c 65 72 74 | else. | Alert|
|00001ce0| 28 27 53 74 61 74 69 73 | 74 69 63 61 6c 20 70 72 |('Statis|tical pr|
|00001cf0| 65 70 61 72 61 74 69 6f | 6e 20 66 61 69 6c 65 64 |eparatio|n failed|
|00001d00| 2e 27 29 3b 0d 65 6e 64 | 3b 0d 00 00 00 00 00 00 |.');.end|;.......|
|00001d10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d80| 00 00 01 00 00 00 02 b9 | 00 00 01 b9 00 00 00 76 |........|.......v|
|00001d90| 00 00 00 02 07 44 65 73 | 6b 74 6f 70 02 00 00 00 |.....Des|ktop....|
|00001da0| 46 4e 44 52 45 52 49 4b | 40 00 00 00 00 00 00 00 |FNDRERIK|@.......|
|00001db0| 0a 42 6c 6f 63 6b 43 68 | 61 72 74 6b 02 00 00 00 |.BlockCh|artk....|
|00001dc0| 66 74 46 43 4e 4c 66 74 | 01 00 ff ff ff ff 00 00 |ftFCNLft|........|
|00001dd0| 00 00 66 74 46 43 4e 4c | 66 74 01 00 ff ff ff ff |..ftFCNL|ft......|
|00001de0| 00 00 00 00 00 00 00 00 | 00 00 80 00 00 00 00 00 |........|........|
|00001df0| 00 00 ad 6f a6 1b 00 00 | 1c 8a 00 00 03 2f 00 00 |...o....|...../..|
|00001e00| 00 00 10 00 00 00 00 02 | 0a 44 65 73 6b 74 6f 70 |........|.Desktop|
|00001e10| 20 44 42 00 02 00 00 17 | 42 54 46 4c 44 4d 47 52 | DB.....|BTFLDMGR|
|00001e20| 40 00 00 00 00 00 00 00 | 00 01 1b 44 00 00 00 02 |@.......|...D....|
|00001e30| c0 00 00 02 c0 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e40| ad c8 f5 fd ad d7 47 2a | 00 00 00 00 00 00 00 00 |......G*|........|
|00001e50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 03 e8 |........|........|
|00001e60| 00 04 03 fc 00 04 04 15 | 00 08 00 00 00 00 00 00 |........|........|
|00001e70| 00 00 00 00 00 00 00 00 | 00 00 10 00 00 00 00 02 |........|........|
|00001e80| 00 00 00 08 00 3a 00 16 | 01 d0 02 28 00 00 01 06 |.....:..|...(....|
|00001e90| 00 04 00 09 00 00 06 4d | 6f 6e 61 63 6f 9a 40 82 |.......M|onaco.@.|
|00001ea0| c6 08 00 00 01 1a 5e cc | 01 04 a9 58 01 04 a9 54 |......^.|...X...T|
|00001eb0| 01 05 5f aa 00 08 01 1a | 51 94 40 82 c5 02 00 00 |.._.....|Q.@.....|
|00001ec0| 01 1a 5e cc 01 04 a9 58 | 01 04 a9 54 01 05 5f 90 |..^....X|...T.._.|
|00001ed0| 00 08 01 1a 4e 60 01 1a | 4e 68 01 1a 4e 70 01 05 |....N`..|Nh..Np..|
|00001ee0| 5f 72 00 00 00 00 01 05 | 5f 72 01 1a 51 f0 40 82 |_r......|_r..Q.@.|
|00001ef0| c1 d2 01 05 5f 90 00 08 | 01 1a 53 1c 40 82 c3 90 |...._...|..S.@...|
|00001f00| 01 1a 51 d4 00 00 00 00 | 00 00 00 00 00 48 00 ff |..Q.....|.....H..|
|00001f10| 00 00 00 04 00 01 00 04 | 01 08 03 af ff 00 00 81 |........|........|
|00001f20| 00 08 00 00 ff ff ff ff | 00 00 67 06 30 03 01 1a |........|..g.0...|
|00001f30| 53 1c 40 82 c1 90 01 1a | 52 02 40 82 00 08 ff 82 |S.@.....|R.@.....|
|00001f40| 01 04 a5 0e 01 1a 53 24 | 40 83 19 82 00 86 01 f4 |......S$|@.......|
|00001f50| 00 00 00 00 01 04 a9 54 | 00 fb 4b 68 00 fb 4b 68 |.......T|..Kh..Kh|
|00001f60| 01 1a 52 1c 01 1a 53 1c | 00 01 00 00 00 81 ff ff |..R...S.|........|
|00001f70| 00 08 00 00 00 00 00 12 | 00 29 ff fd 00 0c ff 76 |........|.).....v|
|00001f80| 01 00 00 00 ff 00 00 02 | 00 01 52 ff 00 00 00 00 |........|..R.....|
|00001f90| 00 06 9a 0a 80 00 00 00 | 00 10 00 00 00 00 00 00 |........|........|
|00001fa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 04 00 00 |........|........|
|00001fb0| 00 01 00 00 00 78 00 03 | 00 00 00 48 00 48 00 00 |.....x..|...H.H..|
|00001fc0| 00 00 03 0d 02 1a ff e2 | ff e3 03 2c 02 36 03 47 |........|...,.6.G|
|00001fd0| 05 7b 03 e0 00 02 00 00 | 00 48 00 48 00 00 00 00 |.{......|.H.H....|
|00001fe0| 02 d8 02 28 00 01 00 00 | 00 64 00 00 00 01 00 03 |...(....|.d......|
|00001ff0| 03 03 00 ff 00 01 27 0f | 00 01 00 01 00 00 00 00 |......'.|........|
|00002000| 00 00 00 00 00 00 00 00 | 60 08 00 19 01 90 00 00 |........|`.......|
|00002010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 01 00 00 |........|........|
|00002020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002030| 00 07 06 70 72 6f 46 69 | 74 00 00 01 00 00 00 02 |...proFi|t.......|
|00002040| b9 00 00 01 b9 00 00 00 | 76 01 04 af cc 15 ac 00 |........|v.......|
|00002050| 00 00 1c 00 76 00 01 66 | 49 4e 46 00 04 00 12 53 |....v..f|INF....S|
|00002060| 54 52 20 00 00 00 4e 00 | 81 ff ff 00 00 00 00 01 |TR ...N.|........|
|00002070| 05 f0 a8 00 82 ff ff 00 | 00 00 0c 01 05 f0 84 00 |........|........|
|00002080| 83 ff ff 00 00 01 16 01 | 05 f0 e0 00 85 ff ff 00 |........|........|
|00002090| 00 01 2a 01 04 a4 bc 00 | 84 ff ff 00 00 01 32 01 |..*.....|......2.|
|000020a0| 04 a0 88 bf f4 ff ff 00 | 00 01 ae 01 05 f1 08 00 |........|........|
|000020b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+